home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 037a / u_heap.zip / TEST.PAS < prev    next >
Pascal/Delphi Source File  |  1992-01-18  |  974b  |  63 lines

  1.  
  2. Program Test;
  3.  
  4. uses
  5.   CRT,UMB_Heap,ShowHeap;
  6.  
  7. const
  8.   BlockSize = 4096;
  9.  
  10. var
  11.   i,N : Word;
  12.   Mem1,Mem2 : LongInt;
  13.   X : Array[1..2000] of Pointer;
  14.  
  15. BEGIN
  16.   ClrScr;
  17.  
  18.   WriteLn('THIS IS BEFORE...');
  19.   WriteLn;
  20.   Show_Heap;
  21.   Mem1 := MemAvail;
  22.   Extend_Heap;
  23.   Mem2 := MemAvail;
  24.  
  25.   WriteLn;
  26.   WriteLn('THIS IS AFTER...');
  27.   WriteLn;
  28.   Show_Heap;
  29.  
  30.   WriteLn(Mem2-Mem1,' bytes more memory!');
  31.   WriteLn;
  32.  
  33.   WriteLn('PRESS ENTER TO TEST');
  34.   ReadLn;
  35.   WriteLn;
  36.   WriteLn('ALLOCATING ',BlockSize,' BYTE BLOCKS, VALUES INDICATE MEMAVAIL');
  37.   WriteLn;
  38.  
  39.   N := 0;
  40.   Write(MemAvail:8);
  41.   while (MemAvail > 5*BlockSize) do
  42.     begin
  43.       Inc(N);
  44.       GetMem(X[N],BlockSize);
  45.       Write(MemAvail:8);
  46.     end;
  47.  
  48.   WriteLn;
  49.   WriteLn;
  50.   WriteLn('PRESS ENTER TO DEALLOCATE');
  51.   ReadLn;
  52.   WriteLn;
  53.  
  54.   for i := N downto 1 do
  55.     begin
  56.       FreeMem(X[i],BlockSize);
  57.       Write(MemAvail:8);
  58.     end;
  59.   WriteLn;
  60.  
  61.   ReadLn;
  62. END.
  63.